Add linux integration validation for published binaries#37
Open
spapa013 wants to merge 3 commits intonauticalab:mainfrom
Open
Conversation
- Add workflow_dispatch trigger to release workflow
- Use go-version-file: go.mod as source of truth for Go version in both workflows
- Replace inline build logic in release.yml with task build:dist
- Add devenv --version smoke test with comment distinguishing integration-tested vs cross-compiled platforms
- Use versioned artifact naming (devenv_{version}_{os}_{arch}) with glob upload
- Extract run-test.yml as reusable workflow via workflow_call; release.yml test job delegates to it
- Add task test:ci with full coverage flags; task test now runs with -race
- Add build:dist task for CI release builds into dist/ with version-in-filename
- Add missing build:linux-arm64 task; include in build:all
- Promote VERSION, COMMIT, BUILD_TIME, GO_VERSION, LDFLAGS to global Taskfile vars, eliminating 6x duplication
Refs PLT-864
- Expand linux/amd64 smoke test to include devenv generate dry-run against valid_user fixture - Add platform support table to release body distinguishing integration-tested vs cross-compiled platforms - Add devenv.yaml global config fixture to internal/config/testdata to support generate command Refs PLT-866
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Builds on #36 to move from "artifact is published" to "artifact is supported". The linux/amd64 binary is now executed in CI against a meaningful command path, and platform support status is communicated consistently to both contributors (workflow comment) and users (release notes).
Changes
.github/workflows/release.ymldevenv versionto also rundevenv generate valid_user --dry-run, exercising config loading, global config merging, and the full template rendering pipelineinternal/config/testdata/devenv.yamlimage,hostName,namespace) required by thegeneratecommandrelease.ymland the existing config package test suitevalid_useris used as the target developer config — by convention this fixture is always valid, making it safe to rely on from outside the config packageNotes
devenv validatecommand was considered as an additional validation step but was found to have a pre-existing bug: it does not mergedevenv.yamlglobal config before validating, causing false failures for configs that rely on inherited fields. This has been documented as a separate Linear issue and worked around here by usinggenerate --dry-runinstead, which uses the correct merged config path.Testing
internal/config/testdata